home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload Trio 2 / Shareware Overload Trio Volume 2 (Chestnut CD-ROM).ISO / dir43 / qsrc_dsk.zip / MODEL / BUDCAT.SPR < prev    next >
Text File  |  1991-12-17  |  11KB  |  351 lines

  1. *       ╓─────────────────────────────────────────────────────────╖
  2. *       ║                                                         ║
  3. *       ║ 12/17/91             BUDCAT.SPR                11:01:00 ║
  4. *       ║                                                         ║
  5. *       ╟─────────────────────────────────────────────────────────╢
  6. *       ║                                                         ║
  7. *       ║ Lisa C. Slater and Steven E. Arnott                     ║
  8. *       ║                                                         ║
  9. *       ║ Copyright (c) 1991                                      ║
  10. *       ║ Application developed for _Using FoxPro 2_              ║
  11. *       ║ Que Publishing Corporation                              ║
  12. *       ║ ISBN 0-88022-703-6                                      ║
  13. *       ║                                                         ║
  14. *       ║ Description:                                            ║
  15. *       ║ This program was automatically generated by GENSCRN.    ║
  16. *       ║                                                         ║
  17. *       ╙─────────────────────────────────────────────────────────╜
  18.  
  19.  
  20. #REGION 0
  21. REGIONAL m.currarea, m.talkstat, m.compstat
  22.  
  23. IF SET("TALK") = "ON"
  24.     SET TALK OFF
  25.     m.talkstat = "ON"
  26. ELSE
  27.     m.talkstat = "OFF"
  28. ENDIF
  29. m.compstat = SET("COMPATIBLE")
  30. SET COMPATIBLE FOXPLUS
  31.  
  32. m.currarea = SELECT()
  33.  
  34.  
  35. *       ╓─────────────────────────────────────────────────────────╖
  36. *       ║                                                         ║
  37. *       ║          BUDCAT Databases, Indexes, Relations           ║
  38. *       ║                                                         ║
  39. *       ╙─────────────────────────────────────────────────────────╜
  40. *
  41.  
  42. IF USED("budcat")
  43.     SELECT budcat
  44.     SET ORDER TO TAG "budcatcode"
  45. ELSE
  46.     SELECT 0
  47.     USE (LOCFILE("budcat.dbf","DBF","Where is budcat?"));
  48.         AGAIN ALIAS budcat ;
  49.         ORDER TAG "budcatcode"
  50. ENDIF
  51.  
  52.  
  53. *       ╓─────────────────────────────────────────────────────────╖
  54. *       ║                                                         ║
  55. *       ║                    Window definitions                   ║
  56. *       ║                                                         ║
  57. *       ╙─────────────────────────────────────────────────────────╜
  58. *
  59.  
  60. IF NOT WEXIST("controls")
  61.     DEFINE WINDOW controls ;
  62.         FROM 1, 54 ;
  63.         TO 17,67 ;
  64.         TITLE "Controls" ;
  65.         FLOAT ;
  66.         NOCLOSE ;
  67.         SHADOW ;
  68.         DOUBLE ;
  69.         COLOR SCHEME 5
  70. ENDIF
  71.  
  72. DEFINE WINDOW budcat ;
  73.     FROM 5, 7 ;
  74.     TO 14,48 ;
  75.     TITLE " Budget Category Table " ;
  76.     NOFLOAT ;
  77.     NOCLOSE ;
  78.     SHADOW ;
  79.     COLOR SCHEME 1
  80.  
  81.  
  82. *       ╓─────────────────────────────────────────────────────────╖
  83. *       ║                                                         ║
  84. *       ║             CONTROLM Setup Code - SECTION 2             ║
  85. *       ║                                                         ║
  86. *       ╙─────────────────────────────────────────────────────────╜
  87. *
  88.  
  89. #REGION 1
  90. addmode = .F.
  91. editmode = .F.
  92.  
  93. *       ╓─────────────────────────────────────────────────────────╖
  94. *       ║                                                         ║
  95. *       ║              BUDCAT Setup Code - SECTION 2              ║
  96. *       ║                                                         ║
  97. *       ╙─────────────────────────────────────────────────────────╜
  98. *
  99.  
  100. #REGION 2
  101. * #REDFINE generator directive in case the
  102. * file has been interactively BROWSEd under
  103. * WIDGET.MPR, which would result in a window
  104. * of the same name already existing because we
  105. * named these windows the same as the files!
  106. * A browse window is named by its title and
  107. * its default title is its ALIAS.
  108.  
  109. *       ╓─────────────────────────────────────────────────────────╖
  110. *       ║                                                         ║
  111. *       ║                 CONTROLM Screen Layout                  ║
  112. *       ║                                                         ║
  113. *       ╙─────────────────────────────────────────────────────────╜
  114. *
  115.  
  116. #REGION 1
  117. IF WVISIBLE("controls")
  118.     ACTIVATE WINDOW controls SAME
  119. ELSE
  120.     ACTIVATE WINDOW controls NOSHOW
  121. ENDIF
  122. @ 1,2 GET act2 ;
  123.     PICTURE "@*VN \<Top;\<Prior;\<Next;\<Bottom;\<Edit;\<Add;\?\<Quit" ;
  124.     SIZE 1,8,1 ;
  125.     DEFAULT 1 ;
  126.     VALID _q1g0nm3fp()
  127.  
  128.  
  129.  
  130.  
  131. *       ╓─────────────────────────────────────────────────────────╖
  132. *       ║                                                         ║
  133. *       ║                  BUDCAT Screen Layout                   ║
  134. *       ║                                                         ║
  135. *       ╙─────────────────────────────────────────────────────────╜
  136. *
  137.  
  138. #REGION 2
  139. IF WVISIBLE("budcat")
  140.     ACTIVATE WINDOW budcat SAME
  141. ELSE
  142.     ACTIVATE WINDOW budcat NOSHOW
  143. ENDIF
  144. @ 1,19 GET m.budcatcode ;
  145.     SIZE 1,4 ;
  146.     DEFAULT " " ;
  147.     PICTURE "@! AAA9" ;
  148.     VALID LASTKEY() = 27 OR chkcode() ;
  149.     ERROR errcode()
  150. @ 3,19 GET m.budcat ;
  151.     SIZE 1,20 ;
  152.     DEFAULT " "
  153. @ 3,2 SAY "Budget category"
  154. @ 1,6 SAY "Budget code"
  155. @ 6,4 GET saveit ;
  156.     PICTURE "@*HN \?\!  Cancel  ;  Save  " ;
  157.     SIZE 1,12,6 ;
  158.     DEFAULT 1 ;
  159.     VALID _q1g0nm45r()
  160.  
  161. IF NOT WVISIBLE("budcat")
  162.     ACTIVATE WINDOW budcat
  163. ENDIF
  164. IF NOT WVISIBLE("controls")
  165.     ACTIVATE WINDOW controls
  166. ENDIF
  167.  
  168.  
  169. READ CYCLE ;
  170.     WHEN _q1g0nm3vg() ;
  171.     DEACTIVATE _q1g0nm3vm() ;
  172.     SHOW _q1g0nm3vs()
  173.  
  174. RELEASE WINDOW budcat
  175. RELEASE WINDOW controls
  176.  
  177. *       ╓─────────────────────────────────────────────────────────╖
  178. *       ║                                                         ║
  179. *       ║                    Closing Databases                    ║
  180. *       ║                                                         ║
  181. *       ╙─────────────────────────────────────────────────────────╜
  182. *
  183.  
  184. IF USED("budcat")
  185.     SELECT budcat
  186.     USE
  187. ENDIF
  188.  
  189. SELECT (m.currarea)
  190.  
  191.  
  192. #REGION 0
  193. IF m.talkstat = "ON"
  194.     SET TALK ON
  195. ENDIF
  196. IF m.compstat = "ON"
  197.     SET COMPATIBLE ON
  198. ENDIF
  199.  
  200.  
  201. *       ╓─────────────────────────────────────────────────────────╖
  202. *       ║                                                         ║
  203. *       ║ _Q1G0NM3FP           act2 VALID                         ║
  204. *       ║                                                         ║
  205. *       ║ Function Origin:                                        ║
  206. *       ║                                                         ║
  207. *       ║ From Screen:         CONTROLM,     Record Number:    2  ║
  208. *       ║ Variable:            act2                               ║
  209. *       ║ Called By:           VALID Clause                       ║
  210. *       ║ Object Type:         Push Button                        ║
  211. *       ║ Snippet Number:      1                                  ║
  212. *       ║                                                         ║
  213. *       ╙─────────────────────────────────────────────────────────╜
  214. *
  215.  
  216. FUNCTION _q1g0nm3fp     &&  act2 VALID
  217. #REGION 1
  218. do case
  219. case act2 = 1
  220.     go top
  221. case act2 = 2
  222.     skip -1
  223.     if bof()
  224.         go top
  225.     endif
  226. case act2 = 3
  227.     skip 1
  228.     if eof()
  229.         go bottom
  230.     endif
  231. case act2 = 4
  232.     go bottom
  233. case act2 = 5
  234.     editmode = .T.
  235. case act2 = 6    
  236.     addmode = .T.
  237. case act2 = 7
  238.     clear read
  239. endcase
  240. show gets
  241. return 0
  242.  
  243. *       ╓─────────────────────────────────────────────────────────╖
  244. *       ║                                                         ║
  245. *       ║ _Q1G0NM45R           saveit VALID                       ║
  246. *       ║                                                         ║
  247. *       ║ Function Origin:                                        ║
  248. *       ║                                                         ║
  249. *       ║ From Screen:         BUDCAT,     Record Number:    7    ║
  250. *       ║ Variable:            saveit                             ║
  251. *       ║ Called By:           VALID Clause                       ║
  252. *       ║ Object Type:         Push Button                        ║
  253. *       ║ Snippet Number:      2                                  ║
  254. *       ║                                                         ║
  255. *       ╙─────────────────────────────────────────────────────────╜
  256. *
  257. FUNCTION _q1g0nm45r     &&  saveit VALID
  258. #REGION 2
  259. IF saveit = 2
  260.    IF addmode
  261.         APPEND BLANK
  262.    ENDIF
  263.    GATHER MEMVAR
  264. ENDIF        
  265. addmode = .F.
  266. editmode = .F.
  267. SHOW GETS
  268.  
  269.  
  270. *       ╓─────────────────────────────────────────────────────────╖
  271. *       ║                                                         ║
  272. *       ║ _Q1G0NM3VG           Read Level When                    ║
  273. *       ║                                                         ║
  274. *       ║ Function Origin:                                        ║
  275. *       ║                                                         ║
  276. *       ║ From Screen:         Multiple Screens                   ║
  277. *       ║ Called By:           READ Statement                     ║
  278. *       ║ Snippet Number:      3                                  ║
  279. *       ║                                                         ║
  280. *       ╙─────────────────────────────────────────────────────────╜
  281. *
  282. FUNCTION _q1g0nm3vg     && Read Level When
  283. *
  284. * When Code from screen: CONTROLM
  285. *
  286. #REGION 1
  287.  
  288.  
  289.  
  290. *       ╓─────────────────────────────────────────────────────────╖
  291. *       ║                                                         ║
  292. *       ║ _Q1G0NM3VM           Read Level Deactivate              ║
  293. *       ║                                                         ║
  294. *       ║ Function Origin:                                        ║
  295. *       ║                                                         ║
  296. *       ║ From Screen:         Multiple Screens                   ║
  297. *       ║ Called By:           READ Statement                     ║
  298. *       ║ Snippet Number:      4                                  ║
  299. *       ║                                                         ║
  300. *       ╙─────────────────────────────────────────────────────────╜
  301. *
  302. FUNCTION _q1g0nm3vm     && Read Level Deactivate
  303. *
  304. * Deactivate Code from screen: CONTROLM
  305. *
  306. #REGION 1
  307. IF UPPER(WONTOP()) = "CONTROLS"
  308.     addmode = .F.
  309.     editmode = .F.
  310. ELSE
  311.     IF ! addmode
  312.         editmode = .T.
  313.     ENDIF
  314. ENDIF
  315. SHOW GETS
  316. RETURN .F.
  317.  
  318.  
  319. *       ╓─────────────────────────────────────────────────────────╖
  320. *       ║                                                         ║
  321. *       ║ _Q1G0NM3VS           Read Level Show                    ║
  322. *       ║                                                         ║
  323. *       ║ Function Origin:                                        ║
  324. *       ║                                                         ║
  325. *       ║ From Screen:         Multiple Screens                   ║
  326. *       ║ Called By:           READ Statement                     ║
  327. *       ║ Snippet Number:      5                                  ║
  328. *       ║                                                         ║
  329. *       ╙─────────────────────────────────────────────────────────╜
  330. *
  331. FUNCTION _q1g0nm3vs     && Read Level Show
  332. PRIVATE currwind
  333. STORE WOUTPUT() TO currwind
  334. *
  335. * Show Code from screen: CONTROLM
  336. *
  337. #REGION 1
  338. IF addmode
  339.    SCATTER MEMVAR BLANK
  340. ELSE
  341.    SCATTER MEMVAR
  342. ENDIF
  343. IF editmode OR addmode
  344.    SHOW GET act2 DISABLE
  345. ELSE
  346.    SHOW GET act2 ENABLE
  347. ENDIF
  348.  
  349. IF NOT EMPTY(currwind)
  350.     ACTIVATE WINDOW (currwind) SAME
  351. ENDIF